Strona tytułowa

Opis rozkazów

Styki
Styk zwierny
Styk rozwierny

Cewki
Cewka zwierna
Cewka rozwierna
Cewka zbocze narastające
Cewka zbocze opadające
Cewka S
Cewka R

Liczniki
Licznik UPCTR
Licznik DNCTR

Timery
Timer ONDTR
Timer OFDT
Timer TMR

Operacje arytmetyczne
Dodawanie ADD
Odejmowanie SUB
Mnożenie MUL
Dzielenie DIV
Reszta z dzielenia MOD
Pierwiastek SQRT

Relacje
Równy EQ
Nierówny NE
Większy GT
Większy równy GE
Mniejszy LT
Mniejszy równy LE
Zakres RANGE

Opis lekcji

Lekcja 1 Wprowadzenie
  Pierwszy program
  Zasada działania
  Organizacja pamięci
  Obsługa programu
  Pierwsze próby
Lekcja 2 Basen
Lekcja 3 Oranżada
Lekcja 4 Pralka
Lekcja 5 Winda

Lekcja 5

Ostatnia, piąta lekcja jest jednocześnie wymagającą najwięcej przemyśleń. Zajmiemy się w niej sterowaniem windą w pięciopiętrowym hotelu.

Po włączeniu lekcji piątej oczom naszym ukazuje się hotelowy parter:

Sterowanie windą odbywa się za pomocą przycisków symbolizujących piętra. Po wciśnięciu któregoś z przycisków, powinien zostać on podświetlony, a winda powinna zamknąć drzwi, pojechać na wybrane piętro, otworzyć drzwi i wyłączyć podświetlanie przycisku. Nieskomplikowane, prawda? A co powinno się stać, gdy ktoś wciśnie przycisk podczas jazdy windy na któreś piętro? Uwzględnienie wszystkich przypadków jest prawdziwym wyzwaniem i potrafią to tylko najlepsi. Czy ty jesteś jednym z nich?

Do sterowania całym systemem dostępne mamy następujące wejścia i wyjścia:

  • Wejścia odpowiadające przyciskom przywołania windy. Każdy z przycisków, po wciśnięciu, daje na odpowiadającym mu wejściu jedynkę tylko na jeden cykl pracy sterownika. Przyciski dostępne są jako PRZYC_P, PRZYC_1, PRZYC_2, PRZYC_3 i PRZYC_4.
  • Wyjścia odpowiadające żarówkom pod przyciskami. Ustawienie na danym wyjściu jedynki powoduje podświetlenie odpowiadającego przycisku. Światełka dostępne są jako SWIATŁO_P, SWIATŁO_1, SWIATŁO_2, SWIATŁO_3 i SWIATŁO_4.
  • Wyjścia sterujące drzwiami na każdym piętrze. Zero na danym wyjściu powoduje zamykanie drzwi, jedynka - ich otwieranie. Ich oznaczenia to odpowiednio dla każdego z pięter DRZWI_P, DRZWI_1, DRZWI_2, DRZWI_3 i DRZWI_4.
  • Dwa wyjścia sterujące ruchem samej windy. Jedno z nich, oznaczone WIND_RUCH, wybiera, czy winda stoi (zero), czy jedzie (jeden). Drugie, oznaczone WIND_KIER, steruje kierunkiem ruchu windy. Zero to ruch w dół, jeden to ruch w górę.
  • Jedno wejście analogowe (CZUJ_WYS) pozwala na odczyt aktualnego położenia windy. Odległość między piętrami wynosi dokładnie 320 jednostek. 0 oznacza więc parter, 320 pierwsze piętro, 640 drugie itd. Wartości pośrednie oznaczają, że winda znajduje się między piętrami.

Nasze zadanie już znamy - należy tak oprogramować sterownik, aby winda zachowywała się jak prawdziwa. Oczywiście nie oprogramujemy całego jej zachowania od razu. Krok po kroku dodamy więcej funkcji.